// ==========================================================================
// GFast自动生成api操作代码。
// 生成日期：2024-11-11 20:52:34
// 生成路径: api/v1/system/users.go
// 生成人：王中阳
// desc:用户相关参数
// company:云南奇讯科技有限公司
// ==========================================================================

package system

import (
	"github.com/gogf/gf/v2/frame/g"
	commonApi "github.com/tiger1103/gfast/v3/api/v1/common"
	"github.com/tiger1103/gfast/v3/internal/app/system/model"
)

// UsersSearchReq 分页请求参数
type UsersSearchReq struct {
	g.Meta `path:"/list" tags:"用户" method:"get" summary:"C端用户列表"`
	commonApi.Author
	model.UsersSearchReq
}

// UsersSearchRes 列表返回结果
type UsersSearchRes struct {
	g.Meta `mime:"application/json"`
	*model.UsersSearchRes
}

// UsersExportReq 导出请求
type UsersExportReq struct {
	g.Meta `path:"/export" tags:"用户" method:"get" summary:"C端用户导出"`
	commonApi.Author
	model.UsersSearchReq
}

// UsersExportRes 导出响应
type UsersExportRes struct {
	commonApi.EmptyRes
}

// 相关连表查询数据
type LinkedUsersDataSearchReq struct {
	g.Meta `path:"/linkedData" tags:"用户" method:"get" summary:"C端用户关联表数据"`
	commonApi.Author
}

// 相关连表查询数据
type LinkedUsersDataSearchRes struct {
	g.Meta `mime:"application/json"`
	*model.LinkedUsersDataSearchRes
}

// UsersAddReq 添加操作请求参数
type UsersAddReq struct {
	g.Meta `path:"/add" tags:"用户" method:"post" summary:"C端用户添加"`
	commonApi.Author
	*model.UsersAddReq
}

// UsersAddRes 添加操作返回结果
type UsersAddRes struct {
	commonApi.EmptyRes
}

// UsersEditReq 修改操作请求参数
type UsersEditReq struct {
	g.Meta `path:"/edit" tags:"用户" method:"put" summary:"C端用户修改"`
	commonApi.Author
	*model.UsersEditReq
}

// UsersEditRes 修改操作返回结果
type UsersEditRes struct {
	commonApi.EmptyRes
}

// UsersGetReq 获取一条数据请求
type UsersGetReq struct {
	g.Meta `path:"/get" tags:"用户" method:"get" summary:"获取C端用户信息"`
	commonApi.Author
	Id int `p:"id" v:"required#主键必须"` //通过主键获取
}

// UsersGetRes 获取一条数据结果
type UsersGetRes struct {
	g.Meta `mime:"application/json"`
	*model.UsersInfoRes
}

// UsersDeleteReq 删除数据请求
type UsersDeleteReq struct {
	g.Meta `path:"/delete" tags:"用户" method:"delete" summary:"删除C端用户"`
	commonApi.Author
	Ids []int `p:"ids" v:"required#主键必须"` //通过主键删除
}

// UsersDeleteRes 删除数据返回
type UsersDeleteRes struct {
	commonApi.EmptyRes
}
